﻿Public Class xtf_LISTADOpersona_

    Public Overrides Sub IniciarLista()
        Try
            gdc_general.BeginUpdate()
            gdc_general.DataSource = dtt_DataTable
            'ulg_Lista.DisplayLayout.GroupByBox.Style = Infragistics.Win.UltraWinGrid.GroupByBoxStyle.Full

            'Creacion y carga de Cuentas
            dtt_DataTable.Columns.Add("Identificador (ID)")
            dtt_DataTable.Columns.Add("Apodo")
            dtt_DataTable.Columns.Add("Tipo")
            dtt_DataTable.Columns.Add("Nombres")
            dtt_DataTable.Columns.Add("Apellido")
            dtt_DataTable.Columns.Add("Condición IVA")
            dtt_DataTable.Columns.Add("Nro. Fiscal")
            dtt_DataTable.Columns.Add("Web")
            dtt_DataTable.Columns.Add("Tipo Documento")
            dtt_DataTable.Columns.Add("Número Documento")
            dtt_DataTable.Columns.Add("Teléfono Primario")
            dtt_DataTable.Columns.Add("Dirección Primaria")
            dtt_DataTable.Columns.Add("EMail Primario")
            dtt_DataTable.Columns.Add("Valor Hora")
            dtt_DataTable.Columns.Add("Fecha Nacimiento")



            gdv_general.PopulateColumns(dtt_DataTable)

            Dim obj_Persona_ As New cls_persona_
            If obj_Persona_.CargarTodos(True, ObtenerRegistroEstado()) Then
                For Each Persona As cls_persona_ In obj_Persona_.Items
                    AgregarItem(Persona)
                Next
            End If
            'ulg_Lista.DataBind()

            FiltrarColumnas()
            gdc_general.EndUpdate()
        Catch ex As Exception
            'Dim frmError As New frm_ErrorManager(ex.Message)
        End Try
    End Sub

    Public Function AgregarItem(ByRef Persona As cls_persona_) As DataRow
        Dim Row As DataRow = dtt_DataTable.NewRow

        Row("Identificador (ID)") = Persona.idpersona
        Row("Apodo") = Persona.nombrefantasia
        Row("Nombres") = Persona.tercero.nombres
        Row("Apellido") = Persona.tercero.apellido
        If Not IsNothing(Persona.tercero.condicioniva) Then
            Row("Condición IVA") = Persona.tercero.condicioniva.ToString
        End If
        Row("Nro. Fiscal") = Persona.tercero.numerofiscal
        Row("Web") = Persona.tercero.web
        If Not IsNothing(Persona.tercero.tipodocumento) Then
            Row("Tipo Documento") = Persona.tercero.tipodocumento.ToString
        End If
        Row("Número Documento") = Persona.tercero.numeroducumento
        Row("Valor Hora") = Persona.valorhora
        Row("Fecha Nacimiento") = Persona.fechanacimiento
        If Not IsNothing(Persona.tercero.telefonoprimario) Then
            Row("Teléfono Primario") = Persona.tercero.telefonoprimario.ToString
        End If
        If Not IsNothing(Persona.tercero.direccionprimario) Then
            Row("Dirección Primaria") = Persona.tercero.direccionprimario.ToString
        End If
        If Not IsNothing(Persona.tercero.emailprimario) Then
            Row("EMail Primario") = Persona.tercero.emailprimario.ToString
        End If



        dtt_DataTable.Rows.Add(Row)
        'ulg_Lista.Rows(ulg_Lista.Rows.Count - 1) = Persona.Height = 19
        Return Row
    End Function

    Public Sub ModificarItem(ByRef Persona As cls_persona_, ByRef ulg_row As DataRow)
        ulg_row("Identificador (ID)") = Persona.idpersona
        ulg_row("Apodo") = Persona.nombrefantasia
        ulg_row("Nombres") = Persona.tercero.nombres
        ulg_row("Apellido") = Persona.tercero.apellido
        If Not IsNothing(Persona.tercero.condicioniva) Then
            ulg_row("Condición IVA") = Persona.tercero.condicioniva.ToString
        End If
        ulg_row("Nro. Fiscal") = Persona.tercero.numerofiscal
        ulg_row("Web") = Persona.tercero.web
        If Not IsNothing(Persona.tercero.tipodocumento) Then
            ulg_row("Tipo Documento") = Persona.tercero.tipodocumento.ToString
        End If
        ulg_row("Número Documento") = Persona.tercero.numeroducumento
        ulg_row("Valor Hora") = Persona.valorhora
        ulg_row("Fecha Nacimiento") = Persona.fechanacimiento
        If Not IsNothing(Persona.tercero.telefonoprimario) Then
            ulg_row("Teléfono Primario") = Persona.tercero.telefonoprimario.ToString
        End If
        If Not IsNothing(Persona.tercero.direccionprimario) Then
            ulg_row("Dirección Primaria") = Persona.tercero.direccionprimario.ToString
        End If
        If Not IsNothing(Persona.tercero.emailprimario) Then
            ulg_row("EMail Primario") = Persona.tercero.emailprimario.ToString
        End If

    End Sub

    Public Sub New()

        Me.Cursor = Cursors.WaitCursor
        InitializeComponent()
        PERMISONuevo = "005001002"
        PERMISOModificar = "005001003"
        PERMISOEliminar = "005001004"
        PERMISOImprimir = "005001005"
        Me.Text = lbl_modulo.Text : lbl_modulodescripcion.Text = "Listado de " & lbl_modulo.Text & "."
        IniciarLista()
        Me.Cursor = Cursors.Default

    End Sub

End Class